Computing systems and associated networks have greatly revolutionized our world. Computing systems operate via the use of software, which includes instructions that instruct the hardware of a computing system to operate in particular ways. An “application service” is software that operates to receive and process requests using access to data. As an example, the application service might be a cloud application that responds to requests using logic defined by the software, and drawing upon data from a data store, such as one or more databases. That set of one or more databases may be offered to the application service as a database as an application service (or “DBaaS”) that maintains and operates the data-tier for the application service. The DBaaS may, in fact, be offered as an application service to maintain and operate the data-tier for many cloud applications or other application services that each operate their own business logic.
Cloud applications that use DBaaS take advantage of the regional diversity (also called “geo-redundancy”) of datacenters offered by the DBaaS as an economical way to protect their data from regional catastrophic failures, and thereby improve availability of the cloud application. Modern data replication technologies allow for maintaining readied (also called “hot”) standby capacity and data replicas to achieve quick recovery from such failures. However, replication across regions involves sending data over internet with significant latencies. To minimize the performance impact of such latency, asynchronous replication protocols are typically used. As a result, the failover to the replica most often results in some amount of data loss (RPO).
Conventionally, the cloud application itself includes complex failure monitoring and failover management workflows in order to ensure high availability. The failover management workflows of the cloud application are made complex by having to account for the real possibility, probability, or even certainty, of dataloss that occurs during a failover to a geo-redundant replica that is not really an exact replica of the data the cloud application had access to prior to the failure.
The subject matter claimed herein is not limited to embodiments that solve any disadvantages or that operate only in environments such as those described above. Rather, this background is only provided to illustrate one exemplary technology area where some embodiments described herein may be practiced.